home *** CD-ROM | disk | FTP | other *** search
- include ssmac.h
- include values/intuition.gs
- include resources/disk.i
-
- opt o+,w+,nochkimm
-
- dv.l diskres
- dbuf.l pointers,13
- dv.l window_hd
- dv.l rastport
- dv.w out
- dv.w in
-
- tbase a4
-
- start
- dtl <disk.resource>,a1
- moveq #0,d0
- call exec,OpenResource
- put.l d0,diskres
- errc.ne <Cannot open disk.resource>
-
- lea my_window(pc),a0
- lea gadgets(pc),a2
- geta pointers,a3
- call igs,igsOpenWindow
- put.l d0,window_hd
- put.l a0,rastport
-
- geta pointers,a1
- moveq #7,d0
- 1$ move.l (a1)+,a0
- bset #0,gg_Activation(a0)
- bset #7,gg_Flags+1(a0)
- dbf d0,1$
-
- get.l pointers,a0
- get.l window_hd,a1
- sub.l a2,a2
- moveq #-1,d0
- call intuition,RefreshGList
-
- geta pointers+8*4,a1
- moveq #3,d0
- 2$ move.l (a1)+,a0
- bset #0,gg_Flags(a0)
- dbf d0,2$
-
- sub.l a0,a0
- moveq #DRU_SIZE,d0
- call ss,TrackIoRq
- move.l d0,a1
- get.l diskres,a6
- jsr DR_GETUNIT(a6)
- errc.ne <Cannot get unit>
-
- writeln <Waiting...>
-
- put.w #-1,out
-
- get.l rastport,a1
- moveq #3,d0
- call gfx,SetAPen
-
- get.l rastport,a1
- moveq #3,d0
- call SetDrMd
-
- loop moveq #5,d1
- call dos,Delay
-
- move.w $bfe000,d0
- get.w in,d1
- put.w d0,in
- eor.w d0,d1
- beq.s 1$
- geta pointers+8*4,a1
- moveq #3,d0
- 2$ move.l (a1)+,a0
- move.w d1,d2
- and.w gg_GadgetID(a0),d2
- beq.s 3$
- mpush a1/d0-1
- move.w gg_LeftEdge(a0),d0
- move.w gg_TopEdge(a0),d1
- move.w d0,d2
- move.w d1,d3
- add.w gg_Width(a0),d2
- subq.w #1,d2
- add.w gg_Height(a0),d3
- subq.w #1,d3
- get.l rastport,a1
- call gfx,RectFill
- mpop a1/d0-1
-
- 3$ dbf d0,2$
-
- 1$ get.l window_hd,a0
- call igs,igsGetIDCMP
- moveq #-1,d0
- cmp.l d0,d2
- beq.s loop
- move.w gg_GadgetID(a0),d1
- bne.s chng
-
- get.l diskres,a6
- jsr DR_GIVEUNIT(a6)
-
- rts
-
- chng get.w out,d0
- eor.w d1,d0
- put.w d0,out
- rol.w #8,d0
- move.w d0,$bfd100
- bra loop
-
- include source:ism/drivetest.ib
-
- gadgets dc.l g_2
- dc.b 1,$FF
- dc.l 0
- ds.l 7
- dc.w 20,20
- dc.w 100,15
- dc.l t_1,0
- dc.w $80
- dc.l $10
- ds.l 2
-
- g_2 dc.l g_3
- dc.b 1,$FF
- dc.l 0
- ds.l 7
- dc.w 130,20
- dc.w 100,15
- dc.l t_2,0
- dc.w $4
- dc.l $10
- ds.l 2
-
- g_3 dc.l g_4
- dc.b 1,$FF
- dc.l 0
- ds.l 7
- dc.w 240,20
- dc.w 100,15
- dc.l t_3,0
- dc.w $2
- dc.l $10
- ds.l 2
-
- g_4 dc.l g_5
- dc.b 1,$FF
- dc.l 0
- ds.l 7
- dc.w 350,20
- dc.w 100,15
- dc.l t_4,0
- dc.w $1
- dc.l $10
- ds.l 2
-
- g_5 dc.l g_6
- dc.b 1,$FF
- dc.l 0
- ds.l 7
- dc.w 20,40
- dc.w 100,15
- dc.l t_5,0
- dc.w $40
- dc.l $10
- ds.l 2
-
- g_6 dc.l g_7
- dc.b 1,$FF
- dc.l 0
- ds.l 7
- dc.w 130,40
- dc.w 100,15
- dc.l t_6,0
- dc.w $20
- dc.l $10
- ds.l 2
-
- g_7 dc.l g_8
- dc.b 1,$FF
- dc.l 0
- ds.l 7
- dc.w 240,40
- dc.w 100,15
- dc.l t_7,0
- dc.w $10
- dc.l $10
- ds.l 2
-
- g_8 dc.l g_9
- dc.b 1,$FF
- dc.l 0
- ds.l 7
- dc.w 350,40
- dc.w 100,15
- dc.l t_8,0
- dc.w $8
- dc.l $10
- ds.l 2
-
- g_9 dc.l g_10
- dc.b 1,$FF
- dc.l 0
- ds.l 7
- dc.w 20,65
- dc.w 100,15
- dc.l t_9,0
- dc.w $20
- dc.l $10
- ds.l 2
-
- g_10 dc.l g_11
- dc.b 1,$FF
- dc.l 0
- ds.l 7
- dc.w 130,65
- dc.w 100,15
- dc.l t_10,0
- dc.w $10
- dc.l $10
- ds.l 2
-
- g_11 dc.l g_12
- dc.b 1,$FF
- dc.l 0
- ds.l 7
- dc.w 240,65
- dc.w 100,15
- dc.l t_11,0
- dc.w $8
- dc.l $10
- ds.l 2
-
- g_12 dc.l g_13
- dc.b 1,$FF
- dc.l 0
- ds.l 7
- dc.w 350,65
- dc.w 100,15
- dc.l t_12,0
- dc.w $4
- dc.l $10
- ds.l 2
-
- g_13 dc.l 0
- dc.b 1,$FF
- dc.l 0
- ds.l 7
- dc.w 20,90
- dc.w 430,15
- dc.l t_13,0
- dc.w $0
- dc.l $10
- ds.l 2
-
-
-
- t_1 dc.b '\MOTOR',0
- t_2 dc.b '\SIDE',0
- t_3 dc.b 'DIR',0
- t_4 dc.b '\STEP',0
- t_5 dc.b '\SELECT 3',0
- t_6 dc.b '\SELECT 2',0
- t_7 dc.b '\SELECT 1',0
- t_8 dc.b '\SELECT 0',0
- t_9 dc.b '\READY',0
- t_10 dc.b '\TRACK 0',0
- t_11 dc.b '\WR PROT',0
- t_12 dc.b '\CHANGE',0
- t_13 dc.b 'Quit',0
-
- tags
- library igs,1
- finish
-
- _LVOigsCleanup equ -30
- _LVOigsAddTracker equ -36
- _LVOigsFreeTracker equ -42
- _LVOigsOpenScreen equ -48
- _LVOigsOpenWindow equ -54
- _LVOigsAlert equ -60
- _LVOigsOpenScreenTagList equ -66
- _LVOigsOpenWindowTagList equ -72
- _LVOigsText equ -78
- _LVOigsWaitIDCMP equ -84
- _LVOigsGetIDCMP equ -90
- _LVOigsStoreWaitIDCMP equ -96
- _LVOigsStoreGetIDCMP equ -102
- _LVOigsItemAddr equ -108
- _LVOigsCommandItemAddr equ -114
- _LVOigsMultiRequest equ -120
- _LVOigsEvaluate equ -126
- _LVOigsEvaluateError equ -132
- _LVOigsHandleGMsg equ -138
- _LVOigsSetMenu equ -144
- _LVOigsCreateGadgets equ -150
- _LVOigsControlMsgs equ -156
- _LVOigsPrintErr equ -162
- _LVOigsSetCleanupRoutine equ -168
-
-